Data proliferation in recent times, both in terms of quantity and complexity, presents a variety of challenges. Among these challenges are searching for, locating, and then retrieving a designated piece or a specific subset of data within an enormous collection of often related but otherwise peripheral data. Database systems are devoted to this sort of data retrieval. In particular, database systems often excel at searching for an exact match for a particular request for data in a large collection of data and then retrieving the requested data. A related type of data search involves finding a best or closest match to a data request or query where an exact match may not exist. Data searches that involve locating a best or closest match to a query are often referred to as a similarity search or a nearest neighbor search. Similarity searches are often integral to activities including, but not limited to, data mining and related information retrieval, pattern recognition, computer learning and computer vision, genetic analysis and related analyses of various biomedical databases. Similarity searches also find application in performing other operations such as motif discovery, frequent pattern discovery, outlier discovery and rule discovery.
Certain examples have other features that are one of in addition to and in lieu of the features illustrated in the above-referenced figures. These and other features are detailed below with reference to the above-referenced figures.